package com.ruoyi.system.service.impl;

import java.util.List;

import com.ruoyi.system.domain.DCoupontype;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.DVoucherMapper;
import com.ruoyi.system.domain.DVoucher;
import com.ruoyi.system.service.IDVoucherService;

/**
 * 优惠卷管理Service业务层处理
 *
 * @author tjm
 * @date 2025-04-03
 */
@Service
public class DVoucherServiceImpl implements IDVoucherService
{
    @Autowired
    private DVoucherMapper dVoucherMapper;

    /**
     * 查询优惠卷管理
     *
     * @param vid 优惠卷管理主键
     * @return 优惠卷管理
     */
    @Override
    public DVoucher selectDVoucherByVid(Long vid)
    {
        return dVoucherMapper.selectDVoucherByVid(vid);
    }

    /**
     * 查询优惠卷管理列表
     *
     * @param dVoucher 优惠卷管理
     * @return 优惠卷管理
     */
    @Override
    public List<DVoucher> selectDVoucherList(DVoucher dVoucher)
    {
        List<DVoucher> list =dVoucherMapper.selectDVoucherList(dVoucher);
        for (DVoucher voucher : list) {
            String name=dVoucherMapper.selectDVouchername(voucher.getCouponType());
            voucher.setCouponTypeName(name);
        }
        System.err.println(list);
        return list;
    }

    /**
     * 新增优惠卷管理
     *
     * @param dVoucher 优惠卷管理
     * @return 结果
     */
    @Override
    public int insertDVoucher(DVoucher dVoucher)
    {
        return dVoucherMapper.insertDVoucher(dVoucher);
    }

    /**
     * 修改优惠卷管理
     *
     * @param dVoucher 优惠卷管理
     * @return 结果
     */
    @Override
    public int updateDVoucher(DVoucher dVoucher)
    {
        return dVoucherMapper.updateDVoucher(dVoucher);
    }

    /**
     * 批量删除优惠卷管理
     *
     * @param vids 需要删除的优惠卷管理主键
     * @return 结果
     */
    @Override
    public int deleteDVoucherByVids(Long[] vids)
    {
        return dVoucherMapper.deleteDVoucherByVids(vids);
    }

    /**
     * 删除优惠卷管理信息
     *
     * @param vid 优惠卷管理主键
     * @return 结果
     */
    @Override
    public int deleteDVoucherByVid(Long vid)
    {
        return dVoucherMapper.deleteDVoucherByVid(vid);
    }

    @Override
    public List<DCoupontype> selectDVoucherNameList() {
        return dVoucherMapper.selectDVoucherNameList();
//        return Collections.emptyList();
    }


}
